package com.weiz.designpatterns.composite;

import java.util.ArrayList;
import java.util.List;

/**
 * 一个企业有两个部门
 * 一个部门有1个员工和一个子部门，子部门有一个员工
 *
 * @param args
 */
public class CompositeTest {
    public static void main(String[] args) {
        //公司类声明对象
        Company company=new Company();

        //公司类的部门集合
        List<Basic> departmentList=new ArrayList();
        company.setList(departmentList);

        //部门一:添加一个员工
        Department d1=new Department();

        //部门1添加到公司
        departmentList.add(d1);

        List<Basic> staff1List=new ArrayList();
        d1.setList(staff1List);

        Staff staff1=new Staff();

        staff1List.add(staff1);


        Department d11=new Department();
        staff1List.add(d11);

        List<Basic> staff11List=new ArrayList();
        d11.setList(staff11List);

        Staff staff11=new Staff();

        staff11List.add(staff11);


        int sum=0;
        System.out.println(company.getSumOfStaff(sum));
    }
}
